-- card: 8907 from stack: in -- bmap block id: 0 -- flags: 4000 -- background id: 12840 -- name: explain11 -- part 1 (field) -- low flags: 01 -- high flags: 2001 -- rect: left=27 top=40 right=279 bottom=482 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 0 -- font id: 0 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: text field -- part 4 (button) -- low flags: 00 -- high flags: A000 -- rect: left=196 top=289 right=334 bottom=248 -- title width / last selected line: 0 -- icon id / first selected line: 9301 / 9301 -- text alignment: 1 -- font id: 0 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: Go back ----- HyperTalk script ----- on mouseUp visual effect scroll right if the short name of this card is "explain1" then go to card 1 else go to previous card end if end mouseUp -- part 5 (button) -- low flags: 00 -- high flags: A000 -- rect: left=271 top=288 right=335 bottom=326 -- title width / last selected line: 0 -- icon id / first selected line: 27009 / 27009 -- text alignment: 1 -- font id: 0 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: Continue ----- HyperTalk script ----- on mouseUp visual effect scroll left go to next card end mouseUp -- part contents for card part 1 ----- text ----- Putting it all together, let's say you want to sort by characters 3 to 7 of item 2 of each line, you want the comparison to be done by numeric values, and you want the lines to be in descending order. The command for this would be: Put MegaSort(unsorted,",",return,"f=2,t=n,d=d,c=char 3 to 7") into sorted Also included in this stack is an XFCN called AnswerALot and an XFCN called PutPathName. AnswerALot emulates the Answer command in HyperCard, except that it allows up to 15 choices. Look at the script for the last example to see how it works.